<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>自定义全局指令</title>
</head>

<body>
    <div id="app">
        <!-- 无参数 -->
        <input type="text" v-color="param">
        <input type="text">
    </div>

    <script type="text/javascript" src="js/vue.js"></script>
    <script type="text/javascript">
        Vue.directive('color', {
            // bind声明周期, 只调用一次，指令第一次绑定到元素时调用。在这里可以进行一次性的初始化设置
            // el 为当前自定义指令的DOM元素  
            // binding 为自定义的函数形参   通过自定义属性传递过来的值 存在 binding.value 里面
            bind: function (el, binding) {
                console.log(binding)
                // 根据指令的参数设置背景色
                el.style.backgroundColor = binding.value.color;
            }
        });
        var vm = new Vue({
            el: '#app',
            data: {
                param: {
                    color: 'red'
                }
            }
        });
    </script>
</body>

</html>